//获取node中的path目录模块及fs文件模块
var path = require("path");
var fs = require('fs');

function decryptFile(oldFilePath) {
    //读取原文件夹下的文件
    fs.readdir(oldFilePath, { withFileTypes: true }, (err, files) => {
        for (let file of files) {
            //判断当前文件是否是文件夹，非文件夹则直接复制
                if (!file.isDirectory()) {
                    //获取原文件中的文件名路径
                    const oldFile = path.resolve(oldFilePath, file.name)
                    //console.log(oldFile)
                    //获取文件后缀名
                    const fileExt = path.extname(oldFile)
                    //console.log(fileExt)
                    //判断当前文件是否为图片文件
                    if (fileExt === ".a") {
                        console.log(`${oldFile}----是个图片需进行base64转换`)
                        //base64转为图片并保存到目标路径，且末尾增加特定后缀.a
                        //reparse(newFilePath,file.name.concat(".a"), baseData)
                        const newFile = oldFile.substring(0, oldFile.length - 2)
                        //console.log(newFile)
                        fs.rename(oldFile, newFile, err1 => {
                        })
                    } else {
                        //组成新文件中的文件名路径,文件名末尾增加"_"
                        const newFile = oldFile.substring(0, oldFile.length - 1)
                        fs.rename(oldFile, newFile, err1 => {
                        })
                    }
                } else if (file.name === ".git" || file.name === ".idea" ) {
                    console.log(`忽略当前文件${file.name}`)
                } else {
                    //如果是文件夹就递归传入子项的目录名,并调用自身
                    const newPath = path.resolve(oldFilePath, file.name)
                    decryptFile(newPath)
                }
        }

    })
}

// const argus = process.argv.splice(2);
// const projectPath = argus[0]
// //console.log(projectPath)
// decryptFile(projectPath)
//decryptFile("F:/project/edu2")
decryptFile("F:/project/vue/bb")
//node decrypt.js decryptFile("F:/project/vue/bb-de")